home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / include / xfs / linux.h < prev    next >
C/C++ Source or Header  |  2005-10-18  |  3KB  |  112 lines

  1. /*
  2.  * Copyright (c) 2004 Silicon Graphics, Inc.  All Rights Reserved.
  3.  *
  4.  * This program is free software; you can redistribute it and/or modify it
  5.  * under the terms of version 2 of the GNU General Public License as
  6.  * published by the Free Software Foundation.
  7.  *
  8.  * This program is distributed in the hope that it would be useful, but
  9.  * WITHOUT ANY WARRANTY; without even the implied warranty of
  10.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  11.  *
  12.  * Further, this software is distributed without any warranty that it is
  13.  * free of the rightful claim of any third person regarding infringement
  14.  * or the like.  Any license provided herein, whether implied or
  15.  * otherwise, applies only to this software file.  Patent licenses, if
  16.  * any, provided herein do not apply to combinations of this program with
  17.  * other software, or any other product whatsoever.
  18.  *
  19.  * You should have received a copy of the GNU General Public License along
  20.  * with this program; if not, write the Free Software Foundation, Inc., 59
  21.  * Temple Place - Suite 330, Boston MA 02111-1307, USA.
  22.  *
  23.  * Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pkwy,
  24.  * Mountain View, CA  94043, or:
  25.  *
  26.  * http://www.sgi.com
  27.  *
  28.  * For further information regarding this notice, see:
  29.  *
  30.  * http://oss.sgi.com/projects/GenInfo/SGIGPLNoticeExplan/
  31.  *
  32.  */
  33. #ifndef __XFS_LINUX_H__
  34. #define __XFS_LINUX_H__
  35.  
  36. #include <uuid/uuid.h>
  37. #include <sys/vfs.h>
  38. #include <sys/ioctl.h>
  39. #include <sys/param.h>
  40. #include <linux/types.h>
  41. #include <malloc.h>
  42. #include <getopt.h>
  43. #include <endian.h>
  44. #include <xfs/swab.h>
  45.  
  46. static __inline__ int xfsctl(const char *path, int fd, int cmd, void *p)
  47. {
  48.     return ioctl(fd, cmd, p);
  49. }
  50.  
  51. static __inline__ int platform_test_xfs_fd(int fd)
  52. {
  53.     struct statfs buf;
  54.     if (fstatfs(fd, &buf) < 0)
  55.         return 0;
  56.     return (buf.f_type == 0x58465342);    /* XFSB */
  57. }
  58.  
  59. static __inline__ int platform_test_xfs_path(const char *path)
  60. {
  61.     struct statfs buf;
  62.     if (statfs(path, &buf) < 0)
  63.         return 0;
  64.     return (buf.f_type == 0x58465342);    /* XFSB */
  65. }
  66.  
  67. static __inline__ int platform_fstatfs(int fd, struct statfs *buf)
  68. {
  69.     return fstatfs(fd, buf);
  70. }
  71.  
  72. static __inline__ void platform_getoptreset(void)
  73. {
  74.     extern int optind;
  75.     optind = 0;
  76. }
  77.  
  78. #ifndef O_DIRECT
  79. # if defined (__powerpc__)
  80. #  define O_DIRECT    0400000
  81. # elif defined (__sparc__)
  82. #  define O_DIRECT    0x100000
  83. # endif
  84. #endif
  85.  
  86. #if (__GLIBC__ < 2) || ((__GLIBC__ == 2) && (__GLIBC_MINOR__ <= 1))
  87. # define constpp    const char * const *
  88. #else
  89. # define constpp    char * const *
  90. #endif
  91.  
  92. #define ENOATTR        ENODATA    /* Attribute not found */
  93. #define EFSCORRUPTED    990    /* Filesystem is corrupted */
  94.  
  95. typedef loff_t        xfs_off_t;
  96. typedef __uint64_t    xfs_ino_t;
  97. typedef __uint32_t    xfs_dev_t;
  98. typedef __int64_t    xfs_daddr_t;
  99. typedef char*        xfs_caddr_t;
  100.  
  101. #ifndef    _UCHAR_T_DEFINED
  102. typedef unsigned char    uchar_t;
  103. #define    _UCHAR_T_DEFINED    1
  104. #endif
  105.  
  106. #ifndef _BOOLEAN_T_DEFINED
  107. typedef enum {B_FALSE, B_TRUE}    boolean_t;
  108. #define _BOOLEAN_T_DEFINED    1
  109. #endif
  110.  
  111. #endif    /* __XFS_IRIX_H__ */
  112.